-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: Don't fetch the current item for a null test session #2469
fix: Don't fetch the current item for a null test session #2469
Conversation
ab125c2
to
9c69e78
Compare
Front-end summary Node 18
|
Version
There are 0 BREAKING CHANGE, 0 feature, 1 fix |
@@ -67,15 +69,19 @@ public function __construct( | |||
DeliveryExecutionService $deliveryExecutionService, | |||
FeatureFlagCheckerInterface $featureFlagChecker, | |||
StateServiceInterface $stateService, | |||
TestSessionService $testSessionService, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Can you please make sure there is no other DI Service provider instantiating this class apart of
TestQtiServiceProvider
? Thanks!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've just checked and it is only used in the TestQtiServiceProvider
from this extension, and all instantiations at runtime are done though the PSR container.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, Code looks good, but I cannot check it.
- New code is covered by tests (if applicable)
- Tests are running successfully (old and new ones) on my local machine (if applicable)
- New code is respecting code style rules
- New code is respecting best practices
- New code is not subject to concurrency issues (if applicable)
- Feature is working correctly on my local machine (if applicable)
- Acceptance criteria are respected
- Pull request title and description are meaningful
These changes have two approvals and the fix was validated by QA, therefore I'm merging this PR. |
Released as v48.5.2. |
* fix: Don't fetch the current item for a null test session * chore: Use DI to fetch services from ConcurringSessionService * chore: Fix tests (cherry picked from commit c22ae07)
…ntAssessmentAtemRef-on-null fix: Don't fetch the current item for a null test session (#2469)
* fix: Don't fetch the current item for a null test session * chore: Use DI to fetch services from ConcurringSessionService * chore: Fix tests (cherry picked from commit c22ae07)
Associated Jira issue: INF-268
Fixes a race condition that happens when the same test taker launches two executions concurrently, causing the logic to pause the timers for the first one that got processed to try to fetch a test session that may not have been persisted yet.
Changelog:
getCurrentAssessmentItemRef()
onnull
when an execution does not have a test session assigned (yet)suspend()
the same delivery execution twiceThis fixes a customer-reported error, and has already been validated on their side. The error was: